В большинстве интерпретаторов команд код завершения последней выполненнойпрограммы содержится в специальной переменной $?. В показанном ниже примере программа
ls вызывается дважды, и оба раза запрашивается код ее завершения. В первом случае программа
завершается корректно и возвращает нулевой код, во втором случае она сталкивается с ошибкой
(указанный в командной строке файл не найден), поэтому код завершения оказывается
ненулевым:
% ls /
bin coda etc lib misc nfs proc sbin usr
boot dev home lost+found mnt opt root tmp var
% echo $?
0
% ls bogusfile
ls: bogusfile: No such file or directory
% echo $?
1
